export interface Rules {
  /** 是否必填，配置此参数不会显示输入框左边的必填星号，如需要，请配置uni-forms-item组件的的required为true */
  required?: boolean;
  /** 数组至少要有一个元素，且数组内的每一个元素都是唯一的。 */
  range?: Array<any>;
  /** 内置校验规则，如这些规则无法满足需求，可以使用正则匹配或者自定义规则 */
  format?: format;
  /** 正则表达式, 在小程序中，json 中不能使用正则对象，如：/^\S+?@\S+?\.\S+?$/，使用正则对象会被微信序列化，导致正则失效。 */
  pattern?: string; // RegExp
  maximum?: number;
  minimum?: number;
  maxLength?: number;
  errorMessage?: string;
  validateFunction?: <T>(rule: any, value: any, data: T, callback: (msg: string) => void) => typeof callback | boolean;
}

export type format = 'string' | 'number' | 'boolean' | 'array' | 'object' | 'url' | 'email';
